Fully or partially automated media libraries, sometimes referred to herein as “libraries” or “robots”, are available to store and manipulate removable storage media, such as tapes used to store computer data for backup or archive purposes. A typical library may be equipped with a robotic or other mechanism for manipulating the media stored therein, such as by inserting a selected volume or unit of the media (e.g., a particular tape) into a read/write device associated with the unit, e.g., a tape drive configured to write data to and/or read data from the media. In the computer network environment, e.g., a backup application (sometimes referred to herein as “data mover”) may be used to store data from one or more computers or other devices connected to the network (sometimes referred to herein as network “nodes” or “hosts”) on storage media associated with a library.
A request may be made to perform operations such as mounting (installing) a specified tape on a designated drive or removing a tape from a drive (sometimes referred to herein as “dismounting” a tape). When an operation involving a tape is complete, the tape may be dismounted from the drive via a “lazy dismount”. The system is configured to wait a predetermined period of time (“lazy wait period”) before physically removing the tape from the drive. During this period, the tape remains in the drive, even though it is not actively being used, and the drive is said to be in a “lazy dismount state.” The lazy dismount may be advantageous because in the event a subsequent request requiring use of the same tape in the same drive is serviced while the tape remains in the drive during a lazy dismount period, there is no need to remount the tape back in the drive. However, the lazy dismount also can result in inefficiencies. For example, when a drive is in the lazy dismount state, there may be another request to use that drive that is unnecessarily held up by the lazy dismount period. Such lazy dismount periods can add up over time and contribute to a backlog of requests in a queue, for example. There is a need for a way to overcome the inefficiencies that may be associated with a lazy dismount.